:root {
  /** 小字体 */
  --font-size-small: 12px;
  /** 基础字体 */
  --font-size-base: 14px;
  /** 中字体 */
  --font-size-medium: 16px;
  /** 大字体 */
  --font-size-large: 18px;
  /** 超大字体 */
  --font-size-larger: 20px;
  /** 标题字体 */
  --font-size-title: 24px;
  /** 主颜色 */
  --primary-color: #1e7dcc;
  /** 链接色 */
  --link-color: #1e7dcc;
  /** 成功色 */
  --success-color: #31A368;
  /** 警告色 */
  --warning-color: #B37C36;
  /** 错误色 */
  --error-color: #B34444;
  /** 标题色 */
  --title-color: rgba(0, 0, 0, 0.85);
  /** 主文本色 */
  --text-color: #333333;
  /** 次文本色 */
  --text-color-secondary: rgba(51, 51, 51, 0.7);
  /** 禁用色 */
  --disabled-color: rgba(0, 0, 0, 0.25);
  /** 圆角 */
  --border-radius-base: 4px;
  /** 边框色 */
  --border-color: #d9d9d9;
  /** 阴影色 */
  --box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  /** 图标颜色 */
  --icon-color: #333;
  /** 背景色 */
  --bg-color: #fff;
}
:root[data-theme="light"] {
  /** 主颜色 */
  --primary-color: #1e7dcc;
  /** 链接色 */
  --link-color: #1e7dcc;
  /** 成功色 */
  --success-color: #31A368;
  /** 警告色 */
  --warning-color: #B37C36;
  /** 错误色 */
  --error-color: #B34444;
  /** 标题色 */
  --title-color: rgba(0, 0, 0, 0.85);
  /** 主文本色 */
  --text-color: #333333;
  /** 次文本色 */
  --text-color-secondary: rgba(51, 51, 51, 0.7);
  /** 禁用色 */
  --disabled-color: rgba(0, 0, 0, 0.25);
  /** 圆角 */
  --border-radius-base: 4px;
  /** 边框色 */
  --border-color: #d9d9d9;
  /** 阴影色 */
  --box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  /** 图标颜色 */
  --icon-color: #333;
  /** 背景色 */
  --bg-color: #fff;
}
:root[data-theme="dark"] {
  /** 主颜色 */
  --primary-color: #1e7dcc;
  /** 链接色 */
  --link-color: #1e7dcc;
  /** 成功色 */
  --success-color: #31A368;
  /** 警告色 */
  --warning-color: #B37C36;
  /** 错误色 */
  --error-color: #B34444;
  /** 标题色 */
  --title-color: rgba(0, 0, 0, 0.85);
  /** 主文本色 */
  --text-color: #333333;
  /** 次文本色 */
  --text-color-secondary: rgba(51, 51, 51, 0.7);
  /** 禁用色 */
  --disabled-color: rgba(0, 0, 0, 0.25);
  /** 圆角 */
  --border-radius-base: 4px;
  /** 边框色 */
  --border-color: #d9d9d9;
  /** 阴影色 */
  --box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  /** 图标颜色 */
  --icon-color: #333;
  /** 背景色 */
  --bg-color: #fff;
}
.me-color-select {
  display: flex;
  flex-flow: column;
  width: 300px;
}
.me-color-select-panel {
  width: 100%;
  height: 180px;
  box-sizing: border-box;
  display: flex;
  margin-bottom: 12px;
}
.me-color-select-panel-saturation {
  width: 100%;
  height: 100%;
  position: relative;
}
.me-color-select-panel-white {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to right, #fff, rgba(255, 255, 255, 0));
}
.me-color-select-panel-black {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to top, #000, rgba(255, 255, 255, 0));
}
.me-color-select-pointer {
  position: absolute;
  z-index: 1000;
}
.me-color-select-pointer-point {
  width: 4px;
  height: 4px;
  min-height: 4px;
  min-width: 4px;
  border-radius: 50%;
  box-shadow: 0 0 0 1.5px #fff, inset 0 0 1px 1px #0000004d, 0 0 1px 2px #0006;
  transform: translate(-2px, -2px);
}
.me-color-select-hue {
  background-color: #fff;
  margin-bottom: 10px;
}
.me-color-select-hue-slider {
  height: 12px;
  width: 100%;
  position: relative;
  cursor: pointer;
  background-image: linear-gradient(to right, #f00 0%, #ff0 17%, #0f0 33%, #0ff 50%, #00f 67%, #f0f 83%, #f00 100%);
}
.me-color-select-hue-slider-thumb {
  width: 4px;
  height: 100%;
  background-color: #fff;
  border-radius: 1px;
  border: 1px solid #ddd;
  position: absolute;
  top: 0;
  left: 0;
  cursor: pointer;
}
.me-color-select-alpha {
  background-color: #fff;
  margin-bottom: 10px;
}
.me-color-select-alpha-slider {
  height: 12px;
  width: 100%;
  position: relative;
  background-image: linear-gradient(45deg, #ccc 25%, transparent 25%), linear-gradient(135deg, #ccc 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #ccc 75%), linear-gradient(135deg, transparent 75%, #ccc 75%);
  background-size: 12px 12px;
  background-position: 0 0, 6px 0, 6px -6px, 0 6px;
}
.me-color-select-alpha-slider-bar {
  height: 100%;
}
.me-color-select-alpha-slider-thumb {
  width: 4px;
  height: 100%;
  background-color: #fff;
  border-radius: 1px;
  border: 1px solid #ddd;
  position: absolute;
  left: 0;
  top: 0;
  cursor: pointer;
}
.me-color-select-colors {
  display: grid;
  grid-template-columns: repeat(auto-fill, 20px);
  grid-row-gap: 8px;
  grid-column-gap: 8px;
  margin-bottom: 10px;
}
.me-color-select-colors-preset {
  width: 20px;
  height: 20px;
  border-radius: 4px;
  display: flex;
  cursor: pointer;
  border: 1px solid transparent;
}
.me-color-select-input {
  display: flex;
  align-items: center;
  font-size: var(--font-size-base);
}
.me-color-select-input-btn {
  margin-left: 10px;
}
